NAND flash memory, as well as other types of non-volatile memories (“NVMs”), are commonly used in electronic devices for mass storage. For example, consumer electronics such as portable media players often include NAND flash memory to store music, videos, and other media programs.
When an electronic device is being powered up or rebooted, an operating system can be booted up from a NVM of the electronic device. The bootup of the operating system can proceed in multiple stages. For example, the electronic device can be configured to first load a bootloader from the NVM or a mask read-only memory (“ROM”) to volatile memory. The electronic device can then use the bootloader to load the operating system and associated firmware from the NVM to the volatile memory.
In some situations, errors in the NVM can occur while a device is being booted up. If such errors are left uncorrected, these errors may result in data loss or render the device inoperable.